package main

import (
	"fmt"
	"sync"
)

func main1() {
	var mu sync.Mutex

	go func() {
		fmt.Println("你好, 世界")
		mu.Lock()
	}()

	mu.Unlock()
}

func main2() {
	var mu sync.Mutex

	mu.Lock()
	go func(){
		fmt.Println("你好, 世界")
		mu.Unlock()
	}()

	mu.Lock()
}


func main() {
	done := make(chan int, 1) // 带缓存的管道

	go func(){
		fmt.Println("你好, 世界")
		done <- 1
	}()

	<-done
}
